package com.bbva.gptf.back.transformador;

import java.math.BigDecimal;
import java.util.List;

import org.springframework.core.convert.converter.Converter;

import com.bbva.gptf.dto.bean.InstrumentosSimulacion;

/**
 * @author Javier Estrella
 * @version 1.0
 * @created 06-mar-2013 17:00:22
 */
public class TransformadorOrdenesToString implements Converter<List<InstrumentosSimulacion>, String> {
	
	@Override
	public String convert(List<InstrumentosSimulacion> lista){
		StringBuilder cadena = new StringBuilder("");
		String info = null;
		for(InstrumentosSimulacion is : lista){
			if (is.getTpNivel() == 3L
					&& is.getImCfMontoOperar() != null
					&& is.getImCfMontoOperar().compareTo(BigDecimal.ZERO) != 0) {
				cadena = cadena.append(is.getCdContrato());
				cadena = cadena.append(";");
				cadena = cadena.append(is.getCdValorBmv());
				cadena = cadena.append(";");
				cadena = cadena.append(is.getCdEmisora());
				cadena = cadena.append(";");
				cadena = cadena.append(is.getCdSerie());
				cadena = cadena.append(";");
				cadena = cadena.append(is.getCtCaTitulo());
				cadena = cadena.append(";");
				cadena = cadena.append(is.getCtCfTitulo());
				cadena = cadena.append(";");
				cadena = cadena.append(is.getImPrecioSucio() != null && is.getImPrecioSucio().compareTo(BigDecimal.ZERO) != 0 ? is.getImPrecioSucio() : is.getImCfPrecio());
				cadena = cadena.append(";");
				cadena = cadena.append(is.getNuCfTasa());
				cadena = cadena.append(";");
				cadena = cadena.append(is.getImValorNominal());
				cadena = cadena.append(";");
				cadena = cadena.append(is.getImCfMontoOperar());
				cadena = cadena.append(";");
				cadena = cadena.append(is.getTpMercado());
				cadena = cadena.append(";");
				cadena = cadena.append("|");
			}
		}
		info = cadena.toString().replace("null", "");
		return info;
	}
	
}